Code Review: Zebra Puzzle In Prolog